package com.pactera.asmp.server.entity;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

public class ProjectProductionConfigExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ProjectProductionConfigExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andProjectIdIsNull() {
            addCriterion("project_id is null");
            return (Criteria) this;
        }

        public Criteria andProjectIdIsNotNull() {
            addCriterion("project_id is not null");
            return (Criteria) this;
        }

        public Criteria andProjectIdEqualTo(Integer value) {
            addCriterion("project_id =", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotEqualTo(Integer value) {
            addCriterion("project_id <>", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdGreaterThan(Integer value) {
            addCriterion("project_id >", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("project_id >=", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdLessThan(Integer value) {
            addCriterion("project_id <", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdLessThanOrEqualTo(Integer value) {
            addCriterion("project_id <=", value, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdIn(List<Integer> values) {
            addCriterion("project_id in", values, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotIn(List<Integer> values) {
            addCriterion("project_id not in", values, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdBetween(Integer value1, Integer value2) {
            addCriterion("project_id between", value1, value2, "projectId");
            return (Criteria) this;
        }

        public Criteria andProjectIdNotBetween(Integer value1, Integer value2) {
            addCriterion("project_id not between", value1, value2, "projectId");
            return (Criteria) this;
        }

        public Criteria andProductionToolIsNull() {
            addCriterion("production_tool is null");
            return (Criteria) this;
        }

        public Criteria andProductionToolIsNotNull() {
            addCriterion("production_tool is not null");
            return (Criteria) this;
        }

        public Criteria andProductionToolEqualTo(String value) {
            addCriterion("production_tool =", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolNotEqualTo(String value) {
            addCriterion("production_tool <>", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolGreaterThan(String value) {
            addCriterion("production_tool >", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolGreaterThanOrEqualTo(String value) {
            addCriterion("production_tool >=", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolLessThan(String value) {
            addCriterion("production_tool <", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolLessThanOrEqualTo(String value) {
            addCriterion("production_tool <=", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolLike(String value) {
            addCriterion("production_tool like", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolNotLike(String value) {
            addCriterion("production_tool not like", value, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolIn(List<String> values) {
            addCriterion("production_tool in", values, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolNotIn(List<String> values) {
            addCriterion("production_tool not in", values, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolBetween(String value1, String value2) {
            addCriterion("production_tool between", value1, value2, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionToolNotBetween(String value1, String value2) {
            addCriterion("production_tool not between", value1, value2, "productionTool");
            return (Criteria) this;
        }

        public Criteria andProductionUrlIsNull() {
            addCriterion("production_url is null");
            return (Criteria) this;
        }

        public Criteria andProductionUrlIsNotNull() {
            addCriterion("production_url is not null");
            return (Criteria) this;
        }

        public Criteria andProductionUrlEqualTo(String value) {
            addCriterion("production_url =", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlNotEqualTo(String value) {
            addCriterion("production_url <>", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlGreaterThan(String value) {
            addCriterion("production_url >", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlGreaterThanOrEqualTo(String value) {
            addCriterion("production_url >=", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlLessThan(String value) {
            addCriterion("production_url <", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlLessThanOrEqualTo(String value) {
            addCriterion("production_url <=", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlLike(String value) {
            addCriterion("production_url like", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlNotLike(String value) {
            addCriterion("production_url not like", value, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlIn(List<String> values) {
            addCriterion("production_url in", values, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlNotIn(List<String> values) {
            addCriterion("production_url not in", values, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlBetween(String value1, String value2) {
            addCriterion("production_url between", value1, value2, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUrlNotBetween(String value1, String value2) {
            addCriterion("production_url not between", value1, value2, "productionUrl");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameIsNull() {
            addCriterion("production_username is null");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameIsNotNull() {
            addCriterion("production_username is not null");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameEqualTo(String value) {
            addCriterion("production_username =", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameNotEqualTo(String value) {
            addCriterion("production_username <>", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameGreaterThan(String value) {
            addCriterion("production_username >", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameGreaterThanOrEqualTo(String value) {
            addCriterion("production_username >=", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameLessThan(String value) {
            addCriterion("production_username <", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameLessThanOrEqualTo(String value) {
            addCriterion("production_username <=", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameLike(String value) {
            addCriterion("production_username like", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameNotLike(String value) {
            addCriterion("production_username not like", value, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameIn(List<String> values) {
            addCriterion("production_username in", values, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameNotIn(List<String> values) {
            addCriterion("production_username not in", values, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameBetween(String value1, String value2) {
            addCriterion("production_username between", value1, value2, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionUsernameNotBetween(String value1, String value2) {
            addCriterion("production_username not between", value1, value2, "productionUsername");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordIsNull() {
            addCriterion("production_password is null");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordIsNotNull() {
            addCriterion("production_password is not null");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordEqualTo(String value) {
            addCriterion("production_password =", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordNotEqualTo(String value) {
            addCriterion("production_password <>", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordGreaterThan(String value) {
            addCriterion("production_password >", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordGreaterThanOrEqualTo(String value) {
            addCriterion("production_password >=", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordLessThan(String value) {
            addCriterion("production_password <", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordLessThanOrEqualTo(String value) {
            addCriterion("production_password <=", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordLike(String value) {
            addCriterion("production_password like", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordNotLike(String value) {
            addCriterion("production_password not like", value, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordIn(List<String> values) {
            addCriterion("production_password in", values, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordNotIn(List<String> values) {
            addCriterion("production_password not in", values, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordBetween(String value1, String value2) {
            addCriterion("production_password between", value1, value2, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andProductionPasswordNotBetween(String value1, String value2) {
            addCriterion("production_password not between", value1, value2, "productionPassword");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdIsNull() {
            addCriterion("hmi_mc_id is null");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdIsNotNull() {
            addCriterion("hmi_mc_id is not null");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdEqualTo(Integer value) {
            addCriterion("hmi_mc_id =", value, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdNotEqualTo(Integer value) {
            addCriterion("hmi_mc_id <>", value, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdGreaterThan(Integer value) {
            addCriterion("hmi_mc_id >", value, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("hmi_mc_id >=", value, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdLessThan(Integer value) {
            addCriterion("hmi_mc_id <", value, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdLessThanOrEqualTo(Integer value) {
            addCriterion("hmi_mc_id <=", value, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdIn(List<Integer> values) {
            addCriterion("hmi_mc_id in", values, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdNotIn(List<Integer> values) {
            addCriterion("hmi_mc_id not in", values, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdBetween(Integer value1, Integer value2) {
            addCriterion("hmi_mc_id between", value1, value2, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andHmiMcIdNotBetween(Integer value1, Integer value2) {
            addCriterion("hmi_mc_id not between", value1, value2, "hmiMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdIsNull() {
            addCriterion("os_mc_id is null");
            return (Criteria) this;
        }

        public Criteria andOsMcIdIsNotNull() {
            addCriterion("os_mc_id is not null");
            return (Criteria) this;
        }

        public Criteria andOsMcIdEqualTo(Integer value) {
            addCriterion("os_mc_id =", value, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdNotEqualTo(Integer value) {
            addCriterion("os_mc_id <>", value, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdGreaterThan(Integer value) {
            addCriterion("os_mc_id >", value, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("os_mc_id >=", value, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdLessThan(Integer value) {
            addCriterion("os_mc_id <", value, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdLessThanOrEqualTo(Integer value) {
            addCriterion("os_mc_id <=", value, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdIn(List<Integer> values) {
            addCriterion("os_mc_id in", values, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdNotIn(List<Integer> values) {
            addCriterion("os_mc_id not in", values, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdBetween(Integer value1, Integer value2) {
            addCriterion("os_mc_id between", value1, value2, "osMcId");
            return (Criteria) this;
        }

        public Criteria andOsMcIdNotBetween(Integer value1, Integer value2) {
            addCriterion("os_mc_id not between", value1, value2, "osMcId");
            return (Criteria) this;
        }

        public Criteria andTaskNameIsNull() {
            addCriterion("task_name is null");
            return (Criteria) this;
        }

        public Criteria andTaskNameIsNotNull() {
            addCriterion("task_name is not null");
            return (Criteria) this;
        }

        public Criteria andTaskNameEqualTo(String value) {
            addCriterion("task_name =", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotEqualTo(String value) {
            addCriterion("task_name <>", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameGreaterThan(String value) {
            addCriterion("task_name >", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameGreaterThanOrEqualTo(String value) {
            addCriterion("task_name >=", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameLessThan(String value) {
            addCriterion("task_name <", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameLessThanOrEqualTo(String value) {
            addCriterion("task_name <=", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameLike(String value) {
            addCriterion("task_name like", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotLike(String value) {
            addCriterion("task_name not like", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameIn(List<String> values) {
            addCriterion("task_name in", values, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotIn(List<String> values) {
            addCriterion("task_name not in", values, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameBetween(String value1, String value2) {
            addCriterion("task_name between", value1, value2, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotBetween(String value1, String value2) {
            addCriterion("task_name not between", value1, value2, "taskName");
            return (Criteria) this;
        }

        public Criteria andReportSendToIsNull() {
            addCriterion("report_send_to is null");
            return (Criteria) this;
        }

        public Criteria andReportSendToIsNotNull() {
            addCriterion("report_send_to is not null");
            return (Criteria) this;
        }

        public Criteria andReportSendToEqualTo(Integer value) {
            addCriterion("report_send_to =", value, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToNotEqualTo(Integer value) {
            addCriterion("report_send_to <>", value, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToGreaterThan(Integer value) {
            addCriterion("report_send_to >", value, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToGreaterThanOrEqualTo(Integer value) {
            addCriterion("report_send_to >=", value, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToLessThan(Integer value) {
            addCriterion("report_send_to <", value, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToLessThanOrEqualTo(Integer value) {
            addCriterion("report_send_to <=", value, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToIn(List<Integer> values) {
            addCriterion("report_send_to in", values, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToNotIn(List<Integer> values) {
            addCriterion("report_send_to not in", values, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToBetween(Integer value1, Integer value2) {
            addCriterion("report_send_to between", value1, value2, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andReportSendToNotBetween(Integer value1, Integer value2) {
            addCriterion("report_send_to not between", value1, value2, "reportSendTo");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotIsNull() {
            addCriterion("smoke_test_or_not is null");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotIsNotNull() {
            addCriterion("smoke_test_or_not is not null");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotEqualTo(Integer value) {
            addCriterion("smoke_test_or_not =", value, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotNotEqualTo(Integer value) {
            addCriterion("smoke_test_or_not <>", value, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotGreaterThan(Integer value) {
            addCriterion("smoke_test_or_not >", value, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotGreaterThanOrEqualTo(Integer value) {
            addCriterion("smoke_test_or_not >=", value, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotLessThan(Integer value) {
            addCriterion("smoke_test_or_not <", value, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotLessThanOrEqualTo(Integer value) {
            addCriterion("smoke_test_or_not <=", value, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotIn(List<Integer> values) {
            addCriterion("smoke_test_or_not in", values, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotNotIn(List<Integer> values) {
            addCriterion("smoke_test_or_not not in", values, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotBetween(Integer value1, Integer value2) {
            addCriterion("smoke_test_or_not between", value1, value2, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andSmokeTestOrNotNotBetween(Integer value1, Integer value2) {
            addCriterion("smoke_test_or_not not between", value1, value2, "smokeTestOrNot");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdIsNull() {
            addCriterion("cc_to_user_id is null");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdIsNotNull() {
            addCriterion("cc_to_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdEqualTo(Integer value) {
            addCriterion("cc_to_user_id =", value, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdNotEqualTo(Integer value) {
            addCriterion("cc_to_user_id <>", value, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdGreaterThan(Integer value) {
            addCriterion("cc_to_user_id >", value, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("cc_to_user_id >=", value, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdLessThan(Integer value) {
            addCriterion("cc_to_user_id <", value, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("cc_to_user_id <=", value, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdIn(List<Integer> values) {
            addCriterion("cc_to_user_id in", values, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdNotIn(List<Integer> values) {
            addCriterion("cc_to_user_id not in", values, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdBetween(Integer value1, Integer value2) {
            addCriterion("cc_to_user_id between", value1, value2, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andCcToUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("cc_to_user_id not between", value1, value2, "ccToUserId");
            return (Criteria) this;
        }

        public Criteria andPriorityIsNull() {
            addCriterion("priority is null");
            return (Criteria) this;
        }

        public Criteria andPriorityIsNotNull() {
            addCriterion("priority is not null");
            return (Criteria) this;
        }

        public Criteria andPriorityEqualTo(String value) {
            addCriterion("priority =", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityNotEqualTo(String value) {
            addCriterion("priority <>", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityGreaterThan(String value) {
            addCriterion("priority >", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityGreaterThanOrEqualTo(String value) {
            addCriterion("priority >=", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityLessThan(String value) {
            addCriterion("priority <", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityLessThanOrEqualTo(String value) {
            addCriterion("priority <=", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityLike(String value) {
            addCriterion("priority like", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityNotLike(String value) {
            addCriterion("priority not like", value, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityIn(List<String> values) {
            addCriterion("priority in", values, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityNotIn(List<String> values) {
            addCriterion("priority not in", values, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityBetween(String value1, String value2) {
            addCriterion("priority between", value1, value2, "priority");
            return (Criteria) this;
        }

        public Criteria andPriorityNotBetween(String value1, String value2) {
            addCriterion("priority not between", value1, value2, "priority");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToIsNull() {
            addCriterion("bug_submit_to is null");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToIsNotNull() {
            addCriterion("bug_submit_to is not null");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToEqualTo(String value) {
            addCriterion("bug_submit_to =", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToNotEqualTo(String value) {
            addCriterion("bug_submit_to <>", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToGreaterThan(String value) {
            addCriterion("bug_submit_to >", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToGreaterThanOrEqualTo(String value) {
            addCriterion("bug_submit_to >=", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToLessThan(String value) {
            addCriterion("bug_submit_to <", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToLessThanOrEqualTo(String value) {
            addCriterion("bug_submit_to <=", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToLike(String value) {
            addCriterion("bug_submit_to like", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToNotLike(String value) {
            addCriterion("bug_submit_to not like", value, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToIn(List<String> values) {
            addCriterion("bug_submit_to in", values, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToNotIn(List<String> values) {
            addCriterion("bug_submit_to not in", values, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToBetween(String value1, String value2) {
            addCriterion("bug_submit_to between", value1, value2, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugSubmitToNotBetween(String value1, String value2) {
            addCriterion("bug_submit_to not between", value1, value2, "bugSubmitTo");
            return (Criteria) this;
        }

        public Criteria andBugAccountIsNull() {
            addCriterion("bug_account is null");
            return (Criteria) this;
        }

        public Criteria andBugAccountIsNotNull() {
            addCriterion("bug_account is not null");
            return (Criteria) this;
        }

        public Criteria andBugAccountEqualTo(String value) {
            addCriterion("bug_account =", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountNotEqualTo(String value) {
            addCriterion("bug_account <>", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountGreaterThan(String value) {
            addCriterion("bug_account >", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountGreaterThanOrEqualTo(String value) {
            addCriterion("bug_account >=", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountLessThan(String value) {
            addCriterion("bug_account <", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountLessThanOrEqualTo(String value) {
            addCriterion("bug_account <=", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountLike(String value) {
            addCriterion("bug_account like", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountNotLike(String value) {
            addCriterion("bug_account not like", value, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountIn(List<String> values) {
            addCriterion("bug_account in", values, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountNotIn(List<String> values) {
            addCriterion("bug_account not in", values, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountBetween(String value1, String value2) {
            addCriterion("bug_account between", value1, value2, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugAccountNotBetween(String value1, String value2) {
            addCriterion("bug_account not between", value1, value2, "bugAccount");
            return (Criteria) this;
        }

        public Criteria andBugPasswordIsNull() {
            addCriterion("bug_password is null");
            return (Criteria) this;
        }

        public Criteria andBugPasswordIsNotNull() {
            addCriterion("bug_password is not null");
            return (Criteria) this;
        }

        public Criteria andBugPasswordEqualTo(String value) {
            addCriterion("bug_password =", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordNotEqualTo(String value) {
            addCriterion("bug_password <>", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordGreaterThan(String value) {
            addCriterion("bug_password >", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordGreaterThanOrEqualTo(String value) {
            addCriterion("bug_password >=", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordLessThan(String value) {
            addCriterion("bug_password <", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordLessThanOrEqualTo(String value) {
            addCriterion("bug_password <=", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordLike(String value) {
            addCriterion("bug_password like", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordNotLike(String value) {
            addCriterion("bug_password not like", value, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordIn(List<String> values) {
            addCriterion("bug_password in", values, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordNotIn(List<String> values) {
            addCriterion("bug_password not in", values, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordBetween(String value1, String value2) {
            addCriterion("bug_password between", value1, value2, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugPasswordNotBetween(String value1, String value2) {
            addCriterion("bug_password not between", value1, value2, "bugPassword");
            return (Criteria) this;
        }

        public Criteria andBugUrlIsNull() {
            addCriterion("bug_url is null");
            return (Criteria) this;
        }

        public Criteria andBugUrlIsNotNull() {
            addCriterion("bug_url is not null");
            return (Criteria) this;
        }

        public Criteria andBugUrlEqualTo(String value) {
            addCriterion("bug_url =", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlNotEqualTo(String value) {
            addCriterion("bug_url <>", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlGreaterThan(String value) {
            addCriterion("bug_url >", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlGreaterThanOrEqualTo(String value) {
            addCriterion("bug_url >=", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlLessThan(String value) {
            addCriterion("bug_url <", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlLessThanOrEqualTo(String value) {
            addCriterion("bug_url <=", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlLike(String value) {
            addCriterion("bug_url like", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlNotLike(String value) {
            addCriterion("bug_url not like", value, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlIn(List<String> values) {
            addCriterion("bug_url in", values, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlNotIn(List<String> values) {
            addCriterion("bug_url not in", values, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlBetween(String value1, String value2) {
            addCriterion("bug_url between", value1, value2, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugUrlNotBetween(String value1, String value2) {
            addCriterion("bug_url not between", value1, value2, "bugUrl");
            return (Criteria) this;
        }

        public Criteria andBugProductIdIsNull() {
            addCriterion("bug_product_id is null");
            return (Criteria) this;
        }

        public Criteria andBugProductIdIsNotNull() {
            addCriterion("bug_product_id is not null");
            return (Criteria) this;
        }

        public Criteria andBugProductIdEqualTo(String value) {
            addCriterion("bug_product_id =", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdNotEqualTo(String value) {
            addCriterion("bug_product_id <>", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdGreaterThan(String value) {
            addCriterion("bug_product_id >", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdGreaterThanOrEqualTo(String value) {
            addCriterion("bug_product_id >=", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdLessThan(String value) {
            addCriterion("bug_product_id <", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdLessThanOrEqualTo(String value) {
            addCriterion("bug_product_id <=", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdLike(String value) {
            addCriterion("bug_product_id like", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdNotLike(String value) {
            addCriterion("bug_product_id not like", value, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdIn(List<String> values) {
            addCriterion("bug_product_id in", values, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdNotIn(List<String> values) {
            addCriterion("bug_product_id not in", values, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdBetween(String value1, String value2) {
            addCriterion("bug_product_id between", value1, value2, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProductIdNotBetween(String value1, String value2) {
            addCriterion("bug_product_id not between", value1, value2, "bugProductId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdIsNull() {
            addCriterion("bug_project_id is null");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdIsNotNull() {
            addCriterion("bug_project_id is not null");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdEqualTo(String value) {
            addCriterion("bug_project_id =", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdNotEqualTo(String value) {
            addCriterion("bug_project_id <>", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdGreaterThan(String value) {
            addCriterion("bug_project_id >", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdGreaterThanOrEqualTo(String value) {
            addCriterion("bug_project_id >=", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdLessThan(String value) {
            addCriterion("bug_project_id <", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdLessThanOrEqualTo(String value) {
            addCriterion("bug_project_id <=", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdLike(String value) {
            addCriterion("bug_project_id like", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdNotLike(String value) {
            addCriterion("bug_project_id not like", value, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdIn(List<String> values) {
            addCriterion("bug_project_id in", values, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdNotIn(List<String> values) {
            addCriterion("bug_project_id not in", values, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdBetween(String value1, String value2) {
            addCriterion("bug_project_id between", value1, value2, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugProjectIdNotBetween(String value1, String value2) {
            addCriterion("bug_project_id not between", value1, value2, "bugProjectId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdIsNull() {
            addCriterion("bug_create_user_id is null");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdIsNotNull() {
            addCriterion("bug_create_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdEqualTo(String value) {
            addCriterion("bug_create_user_id =", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdNotEqualTo(String value) {
            addCriterion("bug_create_user_id <>", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdGreaterThan(String value) {
            addCriterion("bug_create_user_id >", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("bug_create_user_id >=", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdLessThan(String value) {
            addCriterion("bug_create_user_id <", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdLessThanOrEqualTo(String value) {
            addCriterion("bug_create_user_id <=", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdLike(String value) {
            addCriterion("bug_create_user_id like", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdNotLike(String value) {
            addCriterion("bug_create_user_id not like", value, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdIn(List<String> values) {
            addCriterion("bug_create_user_id in", values, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdNotIn(List<String> values) {
            addCriterion("bug_create_user_id not in", values, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdBetween(String value1, String value2) {
            addCriterion("bug_create_user_id between", value1, value2, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugCreateUserIdNotBetween(String value1, String value2) {
            addCriterion("bug_create_user_id not between", value1, value2, "bugCreateUserId");
            return (Criteria) this;
        }

        public Criteria andBugLabelsIsNull() {
            addCriterion("bug_labels is null");
            return (Criteria) this;
        }

        public Criteria andBugLabelsIsNotNull() {
            addCriterion("bug_labels is not null");
            return (Criteria) this;
        }

        public Criteria andBugLabelsEqualTo(String value) {
            addCriterion("bug_labels =", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsNotEqualTo(String value) {
            addCriterion("bug_labels <>", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsGreaterThan(String value) {
            addCriterion("bug_labels >", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsGreaterThanOrEqualTo(String value) {
            addCriterion("bug_labels >=", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsLessThan(String value) {
            addCriterion("bug_labels <", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsLessThanOrEqualTo(String value) {
            addCriterion("bug_labels <=", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsLike(String value) {
            addCriterion("bug_labels like", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsNotLike(String value) {
            addCriterion("bug_labels not like", value, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsIn(List<String> values) {
            addCriterion("bug_labels in", values, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsNotIn(List<String> values) {
            addCriterion("bug_labels not in", values, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsBetween(String value1, String value2) {
            addCriterion("bug_labels between", value1, value2, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andBugLabelsNotBetween(String value1, String value2) {
            addCriterion("bug_labels not between", value1, value2, "bugLabels");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(LocalDateTime value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(LocalDateTime value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(LocalDateTime value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(LocalDateTime value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<LocalDateTime> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<LocalDateTime> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(LocalDateTime value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(LocalDateTime value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(LocalDateTime value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(LocalDateTime value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<LocalDateTime> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<LocalDateTime> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andCreateUidIsNull() {
            addCriterion("create_uid is null");
            return (Criteria) this;
        }

        public Criteria andCreateUidIsNotNull() {
            addCriterion("create_uid is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUidEqualTo(Integer value) {
            addCriterion("create_uid =", value, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidNotEqualTo(Integer value) {
            addCriterion("create_uid <>", value, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidGreaterThan(Integer value) {
            addCriterion("create_uid >", value, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidGreaterThanOrEqualTo(Integer value) {
            addCriterion("create_uid >=", value, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidLessThan(Integer value) {
            addCriterion("create_uid <", value, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidLessThanOrEqualTo(Integer value) {
            addCriterion("create_uid <=", value, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidIn(List<Integer> values) {
            addCriterion("create_uid in", values, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidNotIn(List<Integer> values) {
            addCriterion("create_uid not in", values, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidBetween(Integer value1, Integer value2) {
            addCriterion("create_uid between", value1, value2, "createUid");
            return (Criteria) this;
        }

        public Criteria andCreateUidNotBetween(Integer value1, Integer value2) {
            addCriterion("create_uid not between", value1, value2, "createUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidIsNull() {
            addCriterion("update_uid is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUidIsNotNull() {
            addCriterion("update_uid is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUidEqualTo(Integer value) {
            addCriterion("update_uid =", value, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidNotEqualTo(Integer value) {
            addCriterion("update_uid <>", value, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidGreaterThan(Integer value) {
            addCriterion("update_uid >", value, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidGreaterThanOrEqualTo(Integer value) {
            addCriterion("update_uid >=", value, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidLessThan(Integer value) {
            addCriterion("update_uid <", value, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidLessThanOrEqualTo(Integer value) {
            addCriterion("update_uid <=", value, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidIn(List<Integer> values) {
            addCriterion("update_uid in", values, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidNotIn(List<Integer> values) {
            addCriterion("update_uid not in", values, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidBetween(Integer value1, Integer value2) {
            addCriterion("update_uid between", value1, value2, "updateUid");
            return (Criteria) this;
        }

        public Criteria andUpdateUidNotBetween(Integer value1, Integer value2) {
            addCriterion("update_uid not between", value1, value2, "updateUid");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}